.\"   $Id: decbddrefext.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)decbddrefext.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH DECBDDREFEXT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
decbddrefext \- decrements the external reference of a \fBbdd\fP node.
.so man1/alc_origin.1
.SH SYNOPSIS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**decbddrefext( BddNode )
  bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddNode\fP
The \fBbdd\fP node.
.SH DESCRIPTION
\fBdecbddrefext\fP decrements the number of external reference
of the \fBbdd\fP node \fIBddNode\fP.
.br
.SH RETURN VALUE
\fBdecbddrefext\fP returns the \fIBddNode\fP pointer.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"negative reference, index xxx error !"
.ft R
.RS
The \fIBddNode\fP must have a positive number of external reference.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
   bddsystem  \(**BddSystem;
   bddcircuit \(**BddCircuit;
   bddnode    \(**BddNode;
   chain_list \(**Expr;
   BddSystem  = createbddsystem( 100, 1000, 100, 50000 );
   BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
   BddNode = addbddcircuitin( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
   BddNode = addbddnode( (bddsystem \(**)0, BddNode->INDEX, BddNode->LOW, BddNode->HIGH );
   Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
   decbddrefext( BddNode );
   /* displays Node VAR: 0  INDEX: 2  MARK: 0  REF_EXT: 0  REF_INT: 0 */
   viewbddnode( (bddsystem \(**)0, BddNode );
   /* displays (not i0) */
   viewablexpr( Expr, ABL_VIEW_VHDL );
   freeablexpr( Expr );
   destroybddsystem( (bddsystem \(**)0 );
   destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)


.so man1/alc_bug_report.1

